Method and apparatus for weaving memory braids



' United States Patent [72] Inventor J0nathanJ.Sirota 2,136,076 11/1938Fisheret a1. 139/55 Brookline, Massachusetts 2,204,891 6/1940Hami1ton..... 139/55 [21] AppLNo. 502,249 2,714,901 8/1955 Casper139/319 [22] Filed Oct. 22,1965 3,117,598 1/1964 Burkhalter 139/319 3; gy g 9 ts t Primary Examiner-Henry S.Jaudon Sslgnee mesnesssillgmlnen oAttorneys-McLean, Marton & Boustead, E. L. Bernard, a f: m M]. Brown, H.w. Fou1ds,Jr.,J. w. Routh, N. D. Sayre,

C Po 2 lo 0 assac use S M. L. Suther1and&C. von Boetticher, Jr.

[54] METHOD AND APPARATUS FOR WEAVING MEMORY BRAIDS 6 C1 17 D F rawmg[gs ABSTRACT: Apparatus and method for justifying type com- [52] US. 1.position including a syllabificafign memory and a woven 139/317read-only memory and an apparatus and method of forming [51] Such wovenmemory A proposed line is sensed and character Fleld Of Search widthsare noted when a last word oversets a line it is dete z 317, 1, 319;340/1725 y) 235/61-9 mined whether the line can be justified byspace-band expan- Y) 61-10 y) sion. A hyphenation memory containssyllabification information including root words representing avocabulary and com- [56] References Cited prises magnetic cores threadedby wires representing words. UNITED STATES PATENTS Woven memory braidsare formed by reading paper tape to 1,728,438 9/1929 Nakanishi 139/317control the positions ofheddles on a 100m.

5- 610 640 0 eae e62 846 e 2 853 em e12 953 844 Patented Aug. 25, 1970Perforatorvv Operator Sheet 1 of '12 Take #1 Perforator Operator TT STTS Perforator Perforator l 4 4a. C n 7 Mm 5 I te face I/ Interface n rTape Ta 0e Regder Control A Tape flse Jilfi Specification Decode T yFont Data j' l --I l Buffer I 0 Buffer I I Line Storage l I AddressAddress I Register #1 Register #2 I 2 l Clock I I l I Format & Lin I J I35 Length Storag 5 /40a TTS Calculation TTS Automatic output Logic g t?Automatic Perfc rator Buff-er u er Pe rfc rator H 8!- 52 &

Y "'Cm Comml 5 6 Hyphenation 56a 42 Fixed Lg1c Fixed 23 Space Space 34Just 1ed ta e Hyphenation Memory Linecasting I I Linecasting Machine I IMachine INVENTOR.

Jonathan Jay Six-obs. FlG.l BY

ATTORNEY Sheet 3 of. 12

(IJTPUT EJFTER & CONTROL INVENTOR.

Jonathan Jag Sirota A T7 ORNE Y Patented 1Au ,2s, 1970 3,525,368

Sheet 5 of 12 muss 1 '@G 308a sex-H LAST CHARA TER ATTORNEY Fl Fi 4 4r:

Fl Ga 4 a.

F I v mvsmon. 4 3 Jonathan Jay Sirota.

(amt) BY Patented Aug. 25, 1970 Sheet 'Z of 12 mom i g I E I FROMCOMHITKIION IOGIC T0 DMA PROCBSOR +130 DATA mocssson INVENTOR.

J Onathm Jay Sirota.

FONT

DELAY FIG. 4a

ATTOR N E Y Patented Aug. 25, 1970 3,525,368

Sheet 8 of 12 he! wmmvr --c1. SOURCE 5 FIG. 5 a

nom'r I INVENTOR J Onathan Jgy Sirota y xwm Ptented Aug. 25, 1910 Sheet2 of 12 INVENTOR Jonathan J w Amman Patented Aug. 25, 1970 3 ,525,368

Sheet 10 of 12 DVVEAJTOR Jonathan Jay Sirota d A TTORNEY Patented Aug.25, 1910 3,525,368

Sheet 11 of 12 I J Onathan Jay'sirota %at M ATTORAEY Patented Aug. 25,1910 3,525,368

Sheet 12 of 12 F lG. |O

K X E 993 l E HEDDLES 1 AND 912 E C SOLENOIDS T 9n 0 "U R 7 POWER ADV.SUPPLY x Ros. Y SELECTOR w V912 x 9|a-- INTERRU DRIVE R TAPE.

PHOTOELECTRIC 901 E 932 READER TAPE CLOCK READER INVENTOR.

Jonathan Jay Sirota METHOD AND APPARATUS FOR WEAVING MEMORY BRAIDS Thisinvention relates to typesetting and particularly to a computing machinefor producing justified linesetting tape from unjustified tape and to amethod and apparatus for making authoritative end-of-line separationswithout delay of the machine.

Since before the turn of the century, line casting machines have beenlargely used in the printing and publishing industry. The invention ofthe line casting machine by Mergenthaler was a giant step in speeding upthe composition of type by allowing an operator by keyboard to selectand assemble the characters and spaces of a line and automaticallyforming a mold from which a finished line of type is cast. An operatorusing a line casting machine converts the typewritten copy which hereads into justified lines by assembling matrices and space bands.

The matrix is a small piece of brass with a letter of the alphabet orsome other character recessed into its edge. It is used as a mold tocast the corresponding character in type. A common form of line castingmachine contains 90 channels of matrices, one channel for each of the 90keys on the keyboard. Each channel has a storage capacity forapproximately 20 identical matrices. Matrices are dropped from themagazines as the keys are depressed.

A space band comprises two thin wedge-shaped pieces of metal used asspacers between the words ofa line. The wedges permit a space band to beexpanded. Each space band is dropped in place with minimum thickness andmay be expanded at the end of the line for justification. After a lineis cast, space bands are separated from matrices and returned to thespace band box. The matrices are elevated to a sorting mechanism whichsorts and returns them to their channels.

in manual operation the matrices fall by gravity to a conveyor whichcarries them through an assembling elevator where at the touch of thespace band lever space bands are dropped between words. Observing hiscopy and indicators on the machine the operator relies on his judgmentand the knowledge of the amount of space bands expansion available totry justification when an appropriate number of matrices have beenassembled. The space bands are expanded and if this fills the line, itis passed on to the casting section of the machine. If the line fails tojustify, the operator must add the required extra spacing to the lineeither by adding extra letters, hyphenating if necessary or by addingadditional fixed spacing, which may require resetting the entire line.

in the casting mechanism the matrices are firmly clamped with the spacebands forced outward to spread the line to fit the exact column width.Hot-type metal is injected into the mold and sets in the fraction of asecond. The slug, as the line of type is called, is ejected, trimmed anddropped into the galley.

in larger printing plants today, line casting machines are operatedautomatically by a paper-tape-controlled device known as an operatingunit. The operating unit is connected directly to the line castingmachine keyboard in such a way that the machine can be returned tomanual operation by the turn of a lever. An operating unit senses codecombinations in the tape and translates them into mechanical action ofthe machine. The tape supplied to the machine is so-called, justifiedtape. The judgement of the operator is no longer available at theline-casting machine to supervise the justification and hyphenation aswell as other possible malfunctions. instead of one operator for eachline casting machine there is a monitor who tends several such machinesand he is concerned only with the mechanical operation of the machine.He need not know how to spell, punctuate or hyphenate. Withtape-operated machines the responsibility for justification andend-of-line separations when necessary, is shifted to another operatorat another machine called a tape perforator. The operator of the tapeperforator for convenience may also be called a perforator. He is aspecialist at certain ofthe duties previously performed by a linecasting machine operator; but

because he is relieved of the responsibility for the mechanical detailsof the wonderfully complex linecasting machine he is expected to producejustified copy at a much higher rate than a line casting machineoperator and to insert all the necessary format control signals for theline casting machine. Not only must he be fast but he must also bevirtually error free since, unlike the line casting machine operator, heis unable to see and immediately correct the consequences of any errors.

The teletype setter (TTS) perforator is the machine most commonly usedto prepare justified tape for input to the tapecontrolled line castingmachine. it has a keyboard resembling a standard typewriter, not thekeys of the line casting machine. There is a counting pointer and aspace band justification pointer which indicate the amount of spaceaccumulated on the line and the minimum and maximum expansion limits ofthe space bands. The output of the perforator is a paper tape having upto six holesin a line across the tape to indicate a character, and aline of sprocket holes. The six holes admit of 64 differentcombinations. One of these provides for a shift from upper case to lowercase and another of lower case to upper case whereby the 90 keys of theline casting machine can be operated by the smaller keyboard of theperforator. Noting that the tape perforator operators job is a dull,routine job which at the same time requires speed accuracy, and a quickmind for hyphenation, the position understandably has been the source ofmore than its share of labor disputes.

Various prior-art means have been devised to use computers to take overportions of the perforator operators duties. In one prior-art system, amachine reads unjustified tape and justifies the copy line by line, solong as this can be done without hyphenation. As will be seen fromreading a patent copy, only about one line in 10 requires hyphenation.This particular prior-art system stops the machine and refers thehyphenation problem to a human operator. When the operator presses a keyto direct the hyphenation, the automatic process is resumed. In thisway, one operator can direct several perforating machines, much as oneoperator monitors several line-casting machines. Unfortunately for thisprior-art machine, the requirement for hyphenation occurs randomly on apage. As a result, the requirement for human intervention severelylimits the speed which can be obtained with this approach.

Another prior-art approach is to provide the machine with rules of thumbwhich cover most words, and trust to luck, the readers forebearance forthe remainder.

A still further approach features a small list of commonly usedexceptional words stored in the memory of the computer to eliminate themore frequent and more glaring errors of the just-mentioned approach.According to prior-art arrangements of special-purpose typesettingcomputers, the provision of an adequate word list which can be scannedrapidly has proven to be impractically expensive.

A still further prior-art approach has been to make-use of a large wordlist and a large general-purpose computer. To be economically attractivethis requires either that the computer be shared by a large number oftypesetters working day and night, a situation not found in manynewspapers, or that the computer be shared by other departments of thenewspaper such as circulation, pay-roll, etc. Sharing the computeraggravates the problems with trade unions already made acute by thedevelopment of new processes.

The present invention primarily departs from the prior-art providingrapid access to a large word list as a guide to hyphenation. Thehyphenation problem exists whether a hot type or cold type(Photo-Offset) process is employed. The mechanism for stretching thecopy to fit the line differs in details from one process to the next.

The invention is herein described as it is applied to provide justifiedlinecasting tape from format coded, unjustified tape. In its broaderaspects the invention embraces processes for high speed type compositionby photographic means as exemplified by machines known as Phototype.However, since photographic processes may employ any of severaldifferent means for expanding a line for justification, the details ofthe machine logic required modification for each kind of machine forwhich tape is prepared. Moreover, by modification of the machine asexemplified by the detailed specification herein one computer maycontrol the perforation of tapes for either hot or cold type process, orboth simultaneously.

It is a feature of the invention that the format instructions arereceived by the computer as specifications in terms of the final printedoutput material and the machine interprets the instructions to producetape with all proper hyphenations and with insertion of line castingmachine control functions, thus allowing perforator operators toconcentrate on speed and accuracy in transcribing the copy. Anotherfeature of the machine is a computation system built around twoidentical sonic delay lines one for storing the copy being transformed,the other containing column-width and column-length specifications andthe accumulated length ofa line being set together with available spaceband expansion.

Another object of the invention is to provide a typesetting computerwhich can justify any font.

An important feature of the invention is the provision of a non-erasablepermanent dictionary file giving authoritative end-of-line separationsfor all words in common usage without the use of probablistic rules andjustification by faith. A feature of the hyphenation memory is rapidaccess to the hyphenation memory without delay in the copy flow. Afurther feature of the hyphenation memory is a grouping of memorysections for words having different priorities for search.

A further object of the invention is to provide a typesetting computer,having a memory the storage elements of which may be automatically andinexpensively fabricated by machine; and it is a further object toprovide a machine for so fabricating the storage elements.

Other objects and features of the invention will in part be obvious andin part will be comprehended by reference to the following specificationand annexed drawings of which:

FIG. 1 is a flow chart for the computer of the invention together withaccessory equipment;

FIG. 1a is a timing diagram for the functions of Table I in the computerof FIG. 1;

FIG. 2 is a more detailed block diagram of the general organization ofthe computer;

FIG. 3 is a block diagram showing specific detail of the specificationand computation section;

FIGS. 4a, 4b and 40, when placed together as shown in FIG.

4, is a block diagram showing specific detail of the copy storagesection and of the computer and hereafter referred to as FIG. 4;

FIG. 5 is a schematic diagram illustrating a feature of the hyphenationmemory;

FIG. 5a is a logic diagram relating to FIG. 5;

FIG. 6 is a logic diagram of circuitry linking that of FIGS. 5

and 7; FIG. 6a is a schematic diagram of the hyphenate enable circuitofFIG. 6;

FIG. 7 is a logic diagram of the hyphenation memory system of thecomputer; FIG. 8 is schematic diagram of the wire braid memory of FIG.7;

FIG. 9 is a schematic side elevation view ofa loom for braiding coreropes for the memory of FIG. 8;

FIG. 9a is an illustration of a portion of the rope as braided by themachine of FIG. 9;

FIG. 10 is a block diagram of the control system for the loom of FIG. 9;and

FIG. 11 is a detail ofa portion of the diagram of FIG. 10.

Before explaining how the computer operates it may be well to relatewhat it does in the composing room. FIG. 1 represents the processinvolving the invention from the receipt of marked-up copy from thenewsroom until the galleys of type are cast. In the illustratedembodiment described herein one computer serves two channels ofinformation, the operation of the second channel is identical inprinciple to the first channel although it may even use a different fontof type and in other ways follow different detailed specifications. Thedescription is set forth as applied to the first channel. Correspondingreference characters for the second channel bear a suffix a. Thus theperforator operator 2 who receives from the newsroom the marked-up copycontaining the general instructions as to the length of the story andhow it is to be played has the counterpart in the operator 211 whohandles the second take or story from the newsroom. The operator 2 sitsat the keyboard of a machine 3 called a teletypesetting (TTS)perforator. The keyboard of this machine is similar to that of atypewriter, the keys represent either characters or functions such asshift up and shift down, rub out and bell. The output is a perforatedpaper tape 4 in which each character is represented by a pattern of upto six holes spaced cross-wise of the tape one line of holes for eachcharacter or function. Because there are only 64 possible outputcombinations; and it is the responsibility of the operator to put on thetape, not only the story to be set, but also the instructions for itsformat, an artifice is employed whereby the letters of the alphabetserve double duty to direct instructions. The dollar sign is used tointroduce an instruction sequence. A dollar sign followed by a letter isa forbidden code in the normal context, hence it may be used tointroduce an instruction sequence by which the operator 2 directs theprogram of the computer. The tape 4 produced by the operator is removedfrom the perforator 3 and installed on a related machine 5 termed a tapereader. It should be noted that the coded output of the perforator 3 maybe transmitted by wire or wireless to produce the actual tape at aremote location. The tape reader 5 provides the necessary mechanicalmeans for advancing the tape a character at a time and for transmittingon six wires the code corresponding to the six hole positions. Inaddition, it produces a synchronizing pulse accurately timed relative tothe presentation of the successive characters.

Because the tape reader 5 a mechanical device, cannot have themicrosecond accuracy in timing of the computer 10 and because thecomputer is not always ready to accept new information from the tapereader, it is necessary to have a control 11 and interface circuiary 13by which at the proper time a character is introduced into the buffer 15from the tape reader 5. Here the character is examined by thespecification decoding unit 17 which is concerned with charactersforming part of a format control sequence and if it is a letter of copy,it is recognized by the font data storage 18 which transmits thecorresponding width of the character to the calculation logic 14; andthe character is placed in temporary line storage delay line 101. Itsposition in the line is kept track of by one of several addressregisters 28. The coordinate of the various entries in the delay line101 is the time of entry as indicated by the clock 30. Characters areaccumulated on the line 101 and their widths are accumulated on a seconddelay line 102 until calculations show that the line has been overset(or is about to be overset but can now be justified by spacebandexpansion). In the latter case the line is read out through the outputbuffer 35 which feeds an automatic tape perforator 40 which generatesjustified perforated tape 42 which in turn controls the functions of theline casting machine 50. If on the other hand, the line is overset,hyphenation of the last word may be desirable. The word is copied intothe hyphenation logic section 52 and there compared with thesyllabification information of all of the words of a standard dictionarysuch as Webster's Collegiate Seventh Edition, stored in the hyphenationmemory 54 from which it is determined if and where the last word may bedivided. The justification calculation logic 24 then determines whetherhyphenation, fixed spacing, or a combination of these, best fills outthe line. When fixed spacing is called for, the amount of it is set intothe fixed space counters 56 of the output control section 35 forinsertion between words as they are read out of the computer.

FIG. 2 is a How chart further elaborating the channels ofinformationfiow within the computer. There are two overlapping and interrelated,but not intermingled data patterns. One is the pattern of actualcharacters to be set into type and the other is the information on thewidth of these characters and the width, number, and spacing of thelines into which they are to be set. Copy entering the computer throughtape interface 13 goes to the memory and control circuitry 100 whence itis introduced at the correct time into the delay line 101 from which itis presently discharged via the output buffer control circuit 35 unlesshyphenation is called for; in which case a word is routed to thehyphenation register 110 for processing by hyphenation control 113.Input data from both channels is presented by the merger 112 to thedecoder and sequence recognition logic 17. This circuitry recognizessuch significant event as the end of a paragraph, the occurence of aspace band, the occurence of a numeral in a specification which has tobe converted to binary etc. Decoded instructions control the operationof the delay line 101 as well as the memory address and controlscircuitry 114 responsible for placing the format control specificationsin the proper places in the delay line 102. As each letter is enteredinto delay line '101, its width as reported by the font data 18 to thecalculation logic 24 is subtracted from the line length remaining as thenecessary calculations for justification are carried out. Feed back ofletters from the hyphenation logic 52 through the merger I12 and thedecoder 17 to the font data store 18 is necessary as calculations arecarried out to select the optimum piece ofword for end-of-lineseparation.

TIMING The computer to be described is organized around two ultrasonicdelay lines 101 and 102 each of which stores exactly 2,048 bits with abit rate of two million bits per second. The basic frequency standardfor the system is a two-megacycle crystal-controlled oscillator. Withtemperature-control each magnetostrictive delay line maintains itsinherent delay constant to a small fraction of a microsecond, so thatwith compensating variations in the electronic delay of the pulsereshaping and recirculating circuitry of the line, the line at all timesmaintains its exact capacity in bits.

From a practical point of view it is important to make the systemcompatible with the existing tape perforators and tape readers. Theseare synchronized to the public utility power frequency and handleapproximately 105 characters per second. It was considered undesirableto modify the drive system for the readers to synchronize them exactlywith the crystal frequency standard. Instead, the delay line length wasselected to recirculate the data not quite I0 times for each characterhandled by the tape reader 13 and tape punch 40. The delay line periodis 1.024 milliseconds per cycle. The tape reader presents one newcharacter every 9.5 milliseconds.

The tape reader, by means of its own internal electronics, presentssuccessive characters at the tape punch interface as levels on sixoutput lines. It also produces a synchronizing pulse derived from amagnet on its fly wheel. The synchronizing pulse is designed to occur atthe middle of the presentation time for each successive character. Thusapproximately 4.7 milliseconds after the occurence of thesynchronizing-pulse, the output leads of the tape reader switch to theirnew configuration. The computer samples the output of each tape readeronce every l0 delay line cycles. It will be clear that characters may bemisread or lost only when the time for sampling occurs very near 4.7milliseconds after the synchronizing pulse.

Synchronous reception of characters from the asynchronous tape reader isachieved by circuitry which jumps the sampling time ahead by about onemillisecond when the synchronizing pulse indicates possible misreadingif sampled at the regular time, and maintains an equal number ofcharacters by then stopping the tape reader for one cycle. Forconvenience in relating functions one to another in the operation of themachine, a convention has been adopted illustrated by FIG. 1a and TableI to designate the time and duration of all functions relative to thetime when a character is entered into the paraIleI-to-serial converter303. A first time interval T is designated T During this period thecharacter is converted from TTS to binary code and the formatinstructions, if any, are entered into the delay line 102. The nextcirculation of the delay line designated T,-, is occupied with enteringcharacters into delay line number 101. The period T-,.;, is occupiedwith the start of the justification process and the completionofjustification Without hyphenation. T;,T and T are occupied withhyphenation. T marks the beginning of the routine for the second channelwith the entering of instructions from the second tape reader into thedelay line 102a time T is devoted to reading copy into the delay line101a time T,,; justification for the second channel T and T forhyphenation of the second channel.

Ordinarily the tape reader for channel 1 is sampled at T but if thesynchronizing pulse is observed to occur in T then the sampling is movedup to T and before the machine can stop, a second sample is taken andstored in a misread buffer not shown which stores the next character inline, which is subsequently entered into the buffer 15 during thefollowing T period. Similarly the tape reader for channel 2 isordinarily read in at T, T.-.. The so-called misread sample is taken atT;,,,. In the timing diagrams a pulse is designated by the time intervalin which it starts, a second number (of 3 digits unless zero) is thenumber of microseconds into the time period when the pulse starts andthird designator indicates the width of the pulse in microseconds. Thus@3665 is a pulse in the TABLE I Number Time Function 121. 7.366, 512Read from buffer 301 to converter 302.

1 8,1536 Sample character from reader 5 and put into buifer 301decoders, and sequence circuits 17. Let this character be a space band.

123. 0, 1024 Dcerement width from DAI on 102.

124. 1,1024 Read from parallel to serial converter 302 to correctaddress on 101.

125. 4, 1024 Unload character from 101 to punch buffer 35.

126. 7. 366, 512 Read space band from bufier 301 to parallel to serialconverter 302.

127. 8, 1536 Same as 122.

128... 0,1024 Check sign of DAll. If positive, as it is this time,

transfer DAll to DA21 transfer read present address counter 303 to lastcharacter counter 320.

129... 1,1024 Decrenient width of space band on 102. Load charactcr onto101.

130. 2, 1024 Update expansion registers.

131. 4, 1024 Unload previously loaded character from 101 to punch buffer35 check if space band.

13 7. 366, 512 Same as 121.

133. 8, 1536 Same as 122.

134. 0, 1024 Same as 123.

135. 7 366, 512 Same as 126.

136. 8, 1, 512 Same as 122.

137-. 0, 1024 Check sign of DA1. Negative this time.

138... 1,1024 Unload last word from 101 to hyphenation register unloadDA21 to D1131. 211.

139. 2, 2048 Start dhyphenation procedure and get hyphenated wor 140. 4,1024 Inhibit tape reader 5.

141. 4, 1024 Unload space band from 101 to punch buffer 35.

142. 0, 4090 Try hyphenations until justified.

143. 4, 1024 Punch fixed spacing.

144. 4,1024 Punch until line finished.

145. 5. 5120 Transfer new line up to punch counters 56.

146. 0,3072 Get new line set upcolumn width, indcnts, etc.

147 3, 1024 Start to recycle remaining characters.

148. 4, 1024 Unload from 101 to punch buffer 35.

149. O, 1024 Recycle another character.

150. 3,1024 Recycle last character.

151. 7 366, 512 Read from 301 to parallel to serial converter 302.

152 Continue 241- 9,1024 Unload from 101 to punch bufier 35.

242. 2 366, 512 Read from buffer 301a to converter 302a.

243. 3, 1536 Sample character from reader 52. (ill) and put throughdecoders, sequence circuits 17a.

244. 5,1024 Decreincnt width from DA12.

245. 6, 1024 Read from converter 302 onto 101.

246. 7, 1024 Unload to punch bufier 35a.

247. 2. 366, 512 Read 5; from 301a to converter 302a.

248... 3,1536 Read 0 as character from reader 5a to 301a and decodersand sequence circuits 17a.

249. 3,1536 Inhibit shift from converter and destroy information inconverter and 30121. Inhibit read into converter until end ofinstruction.

250. 9,1024 Same as 241.

251. 3, 1536 Sample (12) from reader 521 into 301a, decoders 17a.

Number Time Function 252. 5,1024 Generate correct binary number.

253. 6, 1024 Store in 102.

254. 0,1024 Same as 241.

255... 3,1536 Read as character. Change reference address and controlsequences.

256. 7, 1024 Same as 241.

257. 3, 1536 Read number from reader a. Convert to binary.

258- 5, 1024 Generate binary number corresponding to width specified forcharacter read.

259. 6,1024 Same as 253.

260. 0, 1024 Same as 256.

261. 3 1536 Same as 257.

262 5, 1024 Same as 258.

263. 6, 1024 Same as 259.

264- 9, 1024 Same as 256.

265. 3, 1536 Read (.)--change control sequence.

266- 9, 1024 Same as 256.

267- 3, 1536 Same as 261.

268. 5, 1024 Same as 262.

260. 6, 1024 Same as 263.

270- 9,1024 Same as 256.

271 3, 1536 Same as 261.

272 5, 1024 Same as 262.

273- 6, 1024 Same as 263.

274 9, 1024 Same as 256.

275. 3, 1536 Same as 265, except instead of Start reading copy timeperiod T-, beginning 366 microseconds after the period begins andlasting for 512 microseconds, but Tl,l024 starts at 1.000 and continuesuntil 2.000. Table I lists a series of typical sequential steps for thecomputer; and FIG. 1a is a timing diagram illustrating the relativetimes of occurences related to the 10 basic timing intervals as justdescribed.

Time runs from left to right and top to bottom. Events 121- 152 typifyjustification and copy handling operations. Events 24l275 encompass theentry of format instructions.

SPEClFlCATlON AND COMPUTATION SECTION Referring now to P10. 3 thecomputation delay line 102 is the center of the logical andcomputational functions of the computer.

it has associated with it seven registers which perform significantfunctions. There is a 32-bit register 201 which is used as a 32-bitbuffer. It is arranged for serial or parallel input and for serialoutput. A -bit register 202 also serves as a buffer and also is arrangedfor serial or parallel input and serial output. These registers 201, and202 are associated with an adder 205 which has variable logic to permitit to add the 32-bit register 201 to the 20-bit register 202 or to add anumber from the delay line 202 to either of these. The sum output of theadder 205 may be controlled by the logic to enter into either the 32-bitregister 201 or the delay line 102. The third register 207 is arrangedas a bit-comparator, which can compare any one of 32 bits in the 32-bitregister 201 with up to 32 bits in the delay line. For example, todetermine whether the first bit in an address on delay line 102 is aone, a one is set into the first bit of the 32-bit register 201 which isthen read out serially with the addressed content of line 102 throughthe bit comparator.

The fourth register is the word comparator 208 which can compare a totalword on the delay line 102 with a word that is in the register 201.

The fifth register is a counter 210 which counts to 16 and to 32 togovern the shifting ofregisters 201 and 202.

The sixth and seventh registers are deficit accumulators (DA3l-DA32) 211and 211a for the hyphenation routine of the first and second channelsrespectively.

These registers and the adder, together with controlling logic includingan address generator 213, match network 215 and data processorcontroller 217 perform all the functions in connection with thecomputation delay line 102.

The delay line is purchased as an article of commerce supplied completewith transduces and amplifiers. For the preferred embodiment describedherein a magnetostrictive line manufactured by Computer ControlCorporation, Framingham, Mass, is preferred. it has a capacity for 2,048

bits which are recirculated every 1.024 milliseconds.

The delay line 102 is operated as a fixed address memory having 128 timeblocks each of 16 bits length into which information is placed. Theseblocks are termed registers although it will be understood that there isno fixed structure connected with these registers. At any given instanta particular part of the delay line will contain the register, but thestress pattern that stores the information moves around the line withthe speed of sound. Line-length information requires more than 16 bitsfor storage. This is assigned double-length registers of 32 bits. Thisaccounts for the number of bits in register 201. Other columnspecifications are allotted 16 bit addresses each.

The address generator 213 produces gates at the right time to read in orread out information from the delay line 102.

The various operations which may be performed are the following:

1. A word may be serially read out of register 201 into any addressedregister of the delay line 102;

2. 32 bits of a word in the delay line may be read serially into theregister 201;

3. A 16-bit word in the delay line 102 may be read serially into theregister 201;

4. 20 bits from delay line 102 may be read serially into the register202;

5. The contents ofa register in delay line 102 may be added serially tothe content of register 201 and the sum stored either at the address onthe line or in the register 201;

6. The content for register 201 can be added to the content of register202 and the sum stored in either register 201 or a selected register ofdelay line 102;

7. The content of register 202 may be added to the content of a registerin the delay line 102 and the sum stored either in the delay line 102 orin the register 201;

8. A full word, either 16 bits or 32 bits, on delay line 102 may becompared with the bits of register 201;

9. Any bit of register 201 may be compared with the corresponding bit ofa register of delay line 102;

10. Words may be read from register 201 into either DA31 (211) or DA32(212); and

11. Words may be read from DA31 or DA32 into register As mentionedabove, different fonts of type may be set by typesetting machines. 1nany one newspaper a relatively small number of fonts are available forline-casting machines, more are usually provided for cold-type machines.Provision is made in the preferred embodiment for 10 fonts, far morethan the average. in each font every letter has associated with it acertain width, an Em is ordinarily wider than En, which is wider than anEl. In the point system of typography each letter has an integral numberof points, there being 12 points to a pica and very nearly six picas toan inch.

For convenience, therefore, each unit of line width in the line widthspecification is made to correspond to about one ten thousandth of aninch one one hundred thirty-ninth of a point. With this degree ofprecision in the specification of character width, fonts are freed fromthe point system and any fonts may be used, and greater flexibility inphoto processes is gained.

in any given font, however, it may be expected that only a small numberof different widths will be used for the characters in the font. A fontcard is a logic circuit board which is plugged into the font informationstore and represents an available font of type. The input to the card isthe six-bit binary number representative of the character plus a seventhbit which shows whether upper case or lower case. The output is a binarynumber which represents the width of the character. Some fonts have asmany as 25 different widths. As each character is read onto the delayline 102, the width of the character is read in parallel from the fontboard into the register 201, where it is processed as explained below.

Since the circulating time of the memory, which is the basic timeinterval of the computer, is only 1.024 milliseconds,

there is a great disparity between the speed of the electronic computerand the speed of the electromechanical paper tape punches and tapereaders which operate at a speed of about lOO characters per second.Because of this, the preferred emwhich is assigned the next tworegisters. There are four of these length specifications and four widthspecifications for each of the two takes which take up the first 24registers. Similarly indent instructions are stored which specify thebodiment of this invention serves two tape readers and two amount ofwhite space to be left at the left, right, or both ends tape punches.Reference to the two sides of the machine apof the line. These variousinstructions may take up'to 72 adpear throughout this specification; butit will be apparent that dresses. Register #73 is the first of 16spacing registers, eight a machine could be built with only one channelor with more for each channel. A line-casting machine makes provisionfor than two. spacing between words by an expandable space band and byIn the preferred embodiment, the registers in delay line 102 0 spaceband plus fixed spacing which is designated Thin, N, and are assigned asfollows. The first 72 registers of 16 bits each M in order of increasingwidth. Whenever the space band are filled with column lengthspecifications, (CLS) column character appears it is entered on the copyline and its width specifications (CWS), and indentation instructions,for minimum width is subtracted from the line width remaining in lengthand width of indentation and left, right, and both DAll or DA12 delayline 102. At the same time, the amount (center). 15 of additionalspacing which might be entered by expansion In Table 11 that followsCLSll indicates the first column p y combination of a maximum of one ofeach of the length specification for tape number one. CWS12 indicatesthree yp of fiXed spaces i m l Registers 73 first column widthspecification for tape #2. ILL 21 indicates through 80 store the amountof spacing available by these the second indentation length instructionfor the left margin, combinations in order of decreasing width. Register80 contape 01 and lCW21 stands for the second center indent width tainsthe amount of width to be gained by space band expaninstruction for tape01. Table ll designates the register assignsion only. Registers 81through 88 contain the same informaments for the preferred embodiment,which is typical. tion for the line being set from the second tape 4a.

As mentioned above in connection with the starting routine, R gi 89 n 90g h r onstitute the first deficit acthe column specifications areentered into the machine at the 25 cumulator (DAll) for the first tape4. At the beginning of start of a take. Address 01 contains the firstcolumn length each line this register received the content of the linewidth specification, which may call for any number of lines up to 99.specification designated by format control. As each character It isentered into the machine by format control immediately is entered online 101, its width is subtracted from DAll. after the $15 identifier.The next specification to be entered is Thus it contains essentially ameasure of the amount of line the column width specification remainingto be set. The second deficit accumulator for tape 4 TABLE II AddressContent Address Content 1 CLSll ICL21. 2 CWS11 1CW21 3 1CL31. 4 CLS21ICW31 5... CWS21 ICL41. 6... ICW41. 7... CLS31. ICL12. 8... CWs31 ICW129... ICLZZ. 10.. CLS41 ICW22 11.- CWs41 1GL32. 12.. ICW32. 13.. CLS12ICL42. 14.. CWS12 ICW42. 15.. EXp.+1\H-N+thi11 1. 16.. CLS22. Ex.+l\I+N 1. 17.. Ows22. Exp.+M+thin 1. 18.. Exp.+Em 1. 19.. CLS32EXp.+En+thin 1. 20-. CWS32 Exp.+En 1. 21.. Exp.+thi11 1. 22.. C-LS4"Exp. 1. 23.. CWS42 Exp-l-M-l-N-l-th 2. 24. Exp+M+N 2. 25. ILLllExp.+M+th 2. 2e. ILW11 Exp.+M 2. 27. ILL21. EXp+N+th 2. 28. ILW21 Exp+N2. 29. ILL31 Exp.+th 2 30. ILWBI Exp. 2. 31. 1LL41 DA11. 32. ILW41 33.ILL12 DA21 34. ILW12 35. 1LL22 DA12 36. ILW22 37. ILL32 DA22 38. ILW3239. ILL42 40. ILW42 41. IRL11. 42. 1RW11 43. IRL21 44. IRL21 45. IRL3146. 1RW31 47. IRL41 48. IRW41 49. IRL12 50. IRW12 51. IRL22 52. IRW2253-.. IRL32 54.--. IRW32 55-.... IRL42. 56.... IRW42 57-..-. ICL11(DA21) is assigned registers #91 and 92. As will be explained below, itis used to store the content of DAll under certain circumstances to beexplained below. Registers 93 through 96 are occupied by deficitregisters DA12 and DA22 for the second tape 4a. The remaining 32registers are reserved for expansion and elaboration of the machine.

The following operations accomplish justification. The specificationsare entered into the registers 172 and copy follows. The content ofregisters 2 and 3 of delay line 102 are entered into the register 201and copied into registers 89-90.

As the copy follows, characters are added to the line 101 and at thesame time the character width is entered in parallel into register 202.The number in register 201 is then subtracted from the content of DAllby the adder 205 and the difference returned, bit-by-bit immediately toregisters 89' -90. When a space band is received, several functions aretriggered by the logic. First it is entered as a character on line 101.Then a l is entered into the first bit register 201 and its contentcompared with register 8990. If the comparison indicates the deficitaccumulator has turned negative, the line is overset (not very likely atthe end of the first word) in which case the consequences will bedescribed below. When the number in DAll is tested positive it is readout into register 201 and then copied from register 201 into DA21 inregisters 9394 and also by end-around shift retained in register 201 andfurther the minimum space band width is decremented. The contents ofregister 201 as minuend is repeatedly passed to adder 205 and at thesame time recirculated by end around shift. In this way the number issuccessively compared with the contents of registers 7380 assubtrahends. When none ofthe subtrahends excede the minuend, content orregister 201 is returned to DA11 and the reading of copy continues untilthe next space band is reached. If only one of the subtrahends exceedthe minuend, the line is justifiable by space band expansion alone. Asignal goes to the copy control section to print out the line, and DA11is loaded with the specified width for the next line.

The results of the successive comparisons of the spacing subtrahendsfrom the deficit accumulator DAll are stored in flip-flops and representpossible justifications for the line if hyphenation does not produce abetter result. Leaving these flip-flops set, the reading of copycontinues until the next space band is reached. This time checking DAllwill probably show that the line had been overset; (if the added word isvery short, perhaps not) and the process is repeated as above. The countto the end of that word is transferred to DA21 and the flip-flops areupdated. But when the line is overset by a spaceband, the content ofDAll is not transferred to DA21 it is of no further use. Ratherattention turns to the content of DA21 which holds the line lengthremaining at the end of the last full word. This is copied out intoRegister 211. (It cant be more than l6 bits.)

Attention also turns to the last word which oversets the line. It iscopied out of delay line 101 into register 110 which is a shift registerof 100 bits capacity. Since only letters are involved in words to behyphenated, only five bits per letter are required and the first lettersof a word may be considered, except that an end-of-line separation maynot be made between 16th and 20th characters.

The hyphenation system, as will be explained below compares the word inregister 110 with over 30,000 root words in storage and if there is amatch almost instantaneously sets a shift register to indicate thecharacters after which hyphenation is permissible, as after the third,fifth, and seventh letters. With this information, and with the contentof DA21 held in register 201, the justification problem is resolved,usually within two circulations of the delay line. The characters of theword in register 110 are referred to the font cards, the width of eachentered into register 202 is subtracted in turn from the deficitaccumulated in register 211 until the longest hyphenation point isreached. If the line is overset on reaching the longest hyphenationpoint, as determined by checking sign on register 211 the registers arereset and a second trial is made at the next hyphenation point. In thisway successively shorter pieces of the word in register 110 are tried.If the line is not overset the remainder in register 211 is compared tothe contents of registers 73-80. If any of these spacings is enough tofill the line, the process is over, and the line is justified with theindicated spacing, since this places the longest available part of theword on the line.

If none of these spacings are enough to fill the line, register 73 minusregister (correspondingly for tape 4a registers 81 minus 88) on delayline 102 are subtracted from DA31 (211) and control registers in thepunch out circuitry are correspondingly set, and new comparisons aremade of DA31 (211) to 7380 on delay line 102. This is repeated until oneor more of the comparisons indicates justification, i.e., the deficitaccumulator is again reduced by the amount corresponding to theinsertion of M plus N plus thin additional fixed space between words,then the process is repeated, trying first, expansion alone (for word upto 20 letters).

For simplicity, the preferred embodiment does not make provision forhyphenation of words that are longer than twenty letters, and it doesnot make provision for words that are hyphenated. It will be clear thatthe system may be modified to handle these cases if this is desired. Formany purposes a hyphen in copy should be treated as a space band withoutexpansion. Clearly a hyphen marks a hyphenation point, and usually itconnects two words that have an independent identify for purposes of thejustification routine.

Words longer than l5 letters present a different problem which isbasically economic. The hyphenation memory might be expanded to anydesired number of letters at increased cost, or a separate memory ofsmaller capacity might handle the longer words. An alternative solutionto the long word problem is to cast a small bit of the burden back onthe typist preparing the unjustified copy. He already has quite a bit ofresponsibility for directing the operation of the machine. To handle thelonger words, the typist merely inserts the dollar sign at possiblehyphenation points of the long word which are not more than about 15letters apart, particularly he should place the dollar sign before wordswhich are constituents of the longer word; thus;

Antidis$establishment$aiianism Since the dollar sign is a forbidden codein the middle of a word, the computer can readily recognize the meaningof the symbol and treat it as a space-band for purpose of initiating ajustification routine. With help, as indicated, the computer wouldcorrectly hyphenate antidisestablishmentarianism at any syllable of theword.

It will be recognized that most long words are compound words and,therefore, the technique may be generally used to solve the problem. Itwill be clear that the setting of type for the German language and anyother languages making frequent use of compound words will require thisoption.

COLUMN LENGTH SPECIFICATIONS The column specifications allow a column tobe set for so many lines at one width, then so many lines at anotherwidth, etc. Up to 99 lines may be set at any width or the machine may bedirected by an R bit in the 16th, position of the width, which indicatesthe-rest of the lines are to be set using the associated CWS. At the endofjustifying each line in the manner above described, many events takeplace, one of these is to decrement the column length specificationbeing used unless it has already reached R. This automatically providesfor the proper selection of column width specification. When time comesto reload DAll (or DA12) the column length specifications are read outin order through the comparator 207 to detect a zero, an r-bit, or anumber in the register. If a zero, the machine compares the next columnlength specification, if

a number, or an r-bit is present, the associated line-widthspecification is read out into register 201 and returned to the DAII (orDA12) position.

COPY HANDLING SECTION As indicated above, the flow of the copy throughthe machine is subject to control by the necessary operations involvedin justifying the lines and in applying column length, width, andindentation instructions.

Copy flow is also influenced by the desirability of making the computercompatible with tape reading and tape punching machines which arealready in common use in the industry.

The tape machines with which the computer is designed to operatetransmit characters at the rate of I per second, each charactercomprising six holes punched in parallel across a paper tape.

For the purposes of the industry sufficient precision in the operationof these machines is obtained if they are synchronized with the powerline frequency of 60 cycles per second, which on the average iscontrolled very precisely by the power company, but which may wanderunder varying load conditions more than can be accommodated by theultrasonic delay lines 101 and 102 which are important components of thecomputer. It is considered preferable not to require synchronousoperation of tape machines and computer, rather a small amount ofslippage is built into the relationship between tape machines andcomputer so that correspondence is maintained by occasionally stopping atape machine for one punch period.

One hundred and five characters per second is one character every 9.33milliseconds. As indicated above, the five computation cycles requiringreference to the delay line are usually enough to secure justificationofa line, cycles to justify two lines. If two tape readers areassociated with each computer, then characters will arrive about onceevery five milliseconds. A delay line access time of about onemillisecond, therefore, provides five accesses for each character.

A delay line length of 1.024 milliseconds and a bit rate oftwomegacycles were, therefore, chosen as adequate for the machine. A higherbit rate, and shorter access time might be used if higher performance isdesired.

At the selected machine rates, the tape reader runsjust a little toofast to allow five delay line cycles for each character. Thisdiscrepency is corrected by stopping the tape reader for one charactertime whenever necessary. The input tape reader may also be stopped whena rare difficult hyphenation situation occurs requiring more than twotrials for hyphenation.

FIG. 4 of three sheets is a block diagram of the circuits connected withdelay line 101. Because of the two-channel operation of the system, asabove only the operation of one channel (the upper channel), will bedescribed. In addition to the tape reader interface 13 shown in FIG. 4b,there is a similar interface 130 for the second channel in FIG. 4a;there is an input character buffer 15 for the first tape reader 5, and abuffer 15a for the second.

Each character presented in parallel on six lines from the tapeinterface 13 is stored in the input buffer 15 and at the same time sentto the character decoding and program sequence recognition logic section17. The buffer 15 is neces-- sary to allow time for the decode logic 17to determine whether the character is copy or instructions. If forexample it is a dollar sign it might be copy or instruction. In eithercase, it is passed to the parallel-to-serial converter 302 through thegate converter presets 303. If the dollar sign, which has been passed tothe converter 302 is followed by a letter it is an instruction and inthat case the dollar sign and the letter are not shifted out of theconverter 302, and are lost as following characters are entered into theconverter 302. If the dollar sign is followed by a numeral, or if othercopy is involved, the character is shifted out of the converter 302 intothe line 101 when the gate 305 is enabled.

For purposes of addressing the delay line 101, the counter 306continuously counts at the rate of 250,000 counts per second, from zeroto 256 and resets to zero. This counter may be considered as holding atany time the address of the portions of the line 101 into which, or fromwhich, data may be flowing at any instant. The delay line is addressedby entering a number in matching network 307. Agreement between thenumber and the count of counter 306 indicates arrival of the designatedaddress on the line.

Copy is entered on the line after the last previous character entered.The read present address counter 308 stores the position after the lastone into which a character has been entered. To add copy, the content ofthe read present address counter 308 with the counter 306 is gated tothe matching network 307. Upon a match, FF 311 opens the gate 304 andthe data is shifted out serially through gate 305 into the delay line101.

Other registers are used to store other significant addresses on thedelay line 101 so that by comparison of these registers to the counter306 access may be had to the addressed information. Register 314 termedthe Start Punch Location Counter carries the address of the nextcharacter to be read out of the delay line 101 into the tape punchbuffer 316. The start punch counter 314 is increased by one each time acharacter is read out of the line 101. Stop Punch location register 318records the location of the last character of the last justified line.The last character register 320 is updated through buffer 321 with everyspace band entered on the line 101 and marks the point from whichcharacters are copied out ofthe line 101 into the hyphenation sectionregister 110 when hyphenation is called for. It is finally updated withthe determination of a hyphenation point to mark the end of the line.The recycle-to-encoder counter 322 is of importance whenever a word ishyphenated. It marks the beginning of the terminal portion of thehyphenated word which is left on delay line 101 when the hyphenationprocess selects the first part of the word for punching out. At thebeginning of the new line, characters are recycled to the width decoderand the total width accumulated is subtracted from the deficitaccumulator before new copy is entered.

The matching network 324 provides for various comparisons between thejust-enumerated registers for housekeeping functions within the copystorage section. Comparison of the Stop Punch Location Counter 318 withthe Start Punch Location Counter 314 terminates the punching operation.Comparison of the Recycle-to-Encoder Counter 322 with the Read PresentAddress Counter 308 determines the recycle routine. When thespecification and computation section satisfies the criteria forjustification, several changes are made in the copy storage of thecomputer to prepare it to punch out a justified line. The amount ofrequired fixed spacing, if any, is entered in the Fixed SpacingInsertion Logic 56. The content of the updated Last Character Counter320 is transferred to the Stop Punch Location Register 318 and the samenumber is entered into the Recycle-to-Encoder Counter 322 and thenincreased by one. At the same time, the new line-width-specification isbeing transferred to DAll. As soon as it is transferred, theRecycle-to-Encoder routine commences the subtraction of character widthsfrom it. Whenever the justification of a line calls for the transfer ofthe count from the Last Character Counter 320 to the Stop Punch LocationRegister 318 at a time when the content of register 318 is not the sameas the content of the register 314, that is, if the previous line isstill being punched out, then the input tape reader is stopped until thepreceding line clears the delay line, freeing the Last Character Counter320. Characters read out of the delay line 101 for output enter firstthe serial-to-parallel buffer 316 which ordinarily immediately presentsthe character in parallel output of six lines to control the tapeperforator 105; however when a space band character is entered intobuffer 316 for punching out it is recognized by space band detector 326and activates the Fixed-Spacing-Insertion Control 330. This is avariable-sequencing circuit which inserts ahead of each space band thenumbers of M, N, and Thin fixed

